// mock 模拟的数据

// 对axios进行二次封装
import axios from "axios"
// 引入进度条
import nprogress from "nprogress"
// start: 进度条开始  done：进度条结束

// 引入nprogress样式
import 'nprogress/nprogress.css'

// require 就是axios 只是配置一下
const mocklRequests = axios.create({
  // 基础路径在发送请求时，路径会出现api
  baseURL: "/mock",
  // 代表请求超时时间为5000
  timeout: 5000,  
})

// 请求拦截器：再发送之前做些事情
mocklRequests.interceptors.request.use(config => {
  // config配置对象，对象里面有一个属性，headers

  // 进度条开始
  nprogress.start()
  return config
}) 

// 响应拦截器
mocklRequests.interceptors.response.use(res => {

  // 进度条结束
  nprogress.done()
  return res.data
}, err => {
  // 响应失败回调函数
  return Promise.reject(new Error(err))
})

export default mocklRequests